nexus\api\event/
extras.rs1use super::Event;
4use unofficial_extras::{keybinds::RawKeybindChange, user::to_user_info_iter};
5
6pub use unofficial_extras::*;
7
8pub const EXTRAS_SQUAD_UPDATE: Event<SquadUpdate> =
10 unsafe { Event::new("EV_UNOFFICIAL_EXTRAS_SQUAD_UPDATE") };
11
12#[derive(Debug, Clone)]
14#[repr(C)]
15pub struct SquadUpdate {
16 pub users: *const UserInfo,
17 pub count: u64,
18}
19
20impl SquadUpdate {
21 #[inline]
22 pub fn iter(&self) -> UserInfoIter<'_> {
23 unsafe { to_user_info_iter(self.users, self.count) }
24 }
25}
26
27pub const LANGUAGE_CHANGED: Event<Language> =
29 unsafe { Event::new("EV_UNOFFICIAL_EXTRAS_LANGUAGE_CHANGED") };
30
31pub const KEYBIND_CHANGED: Event<RawKeybindChange> =
33 unsafe { Event::new("EV_UNOFFICIAL_EXTRAS_KEYBIND_CHANGED") };
34
35pub const CHAT_MESSAGE: Event<SquadMessage> =
37 unsafe { Event::new("EV_UNOFFICIAL_EXTRAS_CHAT_MESSAGE") };